interface RoomPosition {
    directionToPos(direction: DirectionConstant) : RoomPosition | undefined
    getSourceVoid():RoomPosition[]
    getSourceLinkVoid():RoomPosition[]
    getClosestStructure(sr:StructureConstant[],mode:number):Structure | undefined
    getRangedStructure(sr:StructureConstant[],range:number,mode:number):Structure[] |undefined| Structure
    getClosestStore():StructureExtension | StructureSpawn| StructureLab | undefined
    getRangeClosestStore(position_:RoomPosition,range:number):Structure
    getSourceContainerVoid():RoomPosition[]
    LookConfirm(stru:StructureConstant):boolean
    GetPath(target:RoomPosition,range:number,ops?:number):PathData|null
    AddTowerRangeData(target:StructureTower,tempData:ARH):void
    GetStructure(stru:StructureConstant):Structure
    GetStructureList(stru:StructureConstant[]):StructureStorage[]
    GetRuin():Ruin
    FindPath(target:RoomPosition,range:number):RoomPosition[]
}